The moment of truth: virtues and limitations of commodity Hardware Transactional Memory

نویسندگان

  • Nuno Diegues
  • Paolo Romano
  • Luis Rodrigues
چکیده

The multi-core revolution that took place nearly one decade ago has turned parallel programming into a major concern for mainstream software development industry. In this context, Transactional Memory (TM) has emerged as a simpler, attractive alternative to lock-based synchronization, whose complexity and error-proneness are widely recognized. On the other hand, performance of TM has been a matter of controversial debate, as existing software implementations (STMs) need to incur in instrumentation overheads that can hinder their efficiency compared to fine-grained locking schemes. Recently, this landscape has been profoundly changed by the integration of Hardware TM (HTM) in the last generation of Intel processors, which raised a number of questions on the future of TM, such as: will the availability of HTM support turn TM into a mainstream paradigm? What role will STM play now that HTM is available in commodity architectures? We seek answers to these questions by conducting the largest study on TM to date, comparing different locking techniques, hardware and software TMs, as well as different combinations of these mechanisms, from the dual perspective of performance and power consumption. Our study sheds a mix of light and shadows: on one hand, we identify workloads in which HTM clearly outperforms existing synchronization mechanism; on the other hand, current HTM implementations suffer of severe restrictions, which limit significantly the scope in which these can be more effective that state of the art STM solutions. We also highlight the urge for designing more effective approaches for using HTM and STM in synergy, as existing hybrid solutions suffer from excessive overheads that nullify their potential benefits.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Extending Hardware Transactional Memory Capacity via Rollback-Only Transactions and Suspend/Resume

Transactional memory, which aims at simplifying concurrent programming by bringing the familiar abstraction of transactions to parallel computing, has grown from a “research toy” to a mature technology integrated in mainstream programming language and CPU architectures. Yet, despite being supported in commodity processors from Intel and IBM, hardware transactional memory (HTM) suffers from some...

متن کامل

Building and Using the ATLAS Transactional Memory System

At WARFP 2005, we proposed ATLAS as a scalable implementation for transactional parallel systems [5]. The impetus for the development of ATLAS is to address the significant hurdles that software simulators face in multiprocessor architectural research. In particular, ATLAS is an FPGA-based system that primarily serves as a rapid software development platform for our transactional memory model, ...

متن کامل

The Whatness of ntellectual Virtues and their Relation to Ethical Virtues

 Virtue is of the most important ethical concepts and among those few words including ethical propositions. Aristotle has divided virtues into two ethical and intellectual classes with regard to their purposes. It was known for him that intellectual virtues were stable features of soul which are used by the purpose of recognizing reality (truth). In virtue-oriented epistemology approach which h...

متن کامل

An Integrated Hardware-Software Approach to Transactional Memory

Transactional memory has been proposed as a general and flexible way to allow programs to read and modify disparate primary-memory locations atomically as a single operation, much as a database transaction can atomically modify many records on disk. Hardware transactional memory supports atomicity through architectural means, whereas software transactional memory supports atomicity through lang...

متن کامل

STAMP Need Not Be Considered Harmful

The STAMP benchmark suite has not seen any updates in 5 years. During that time, language-level support for Transactional Memory (TM) has arrived, in the form of a draft specification for C++ and compiler support. In addition, there is now commodity hardware support for TM. The properties of STAMP, however, do not always match with the emerging consensus on how hardware and software transaction...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014